// 第1优先级：各种括号，如()、[]等、成员运算符 . ；
// 第2优先级：所有单目运算符，如++、–、!、~等；
// 第3优先级：乘法运算符*、除法运算符/、求余运算符%；
// 第4优先级：加法运算符+、减法运算符-；
// 第5优先级：移位运算符<<、>>；
// 第6优先级：大于运算符>、大于等于运算符>=、小于运算符<、小于等于运算符<=；
// 第7优先级：等于运算符==、不等于运算符!=；
// 第8优先级：按位与运算符&；
// 第9优先级：按位异或运算符^；
// 第10优先级：按位或运算符|；
// 第11优先级：逻辑与运算符&&；
// 第12优先级：逻辑或运算符||；
// 第13优先级：三目条件运算符 ?: ；
// 第14优先级：各种赋值运算符，如=、+=、-=、*=、/= 等；
// 第15优先级：逗号运算, 。

//优先级这么多，技能就一条，多用().
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/time.h>
#include <time.h>
#include <unistd.h>
#include <sys/timeb.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <errno.h>
#include <fcntl.h> // file option
#include <dirent.h>
// #include <iostream>
// #include <sstream>
// #include <vector>
// #include <list>
// #include <map>
// #include <thread>
// #include <string>
// #include <iomanip>
// #include <fstream>
// #include <vector>
// #include <set>
// #include <algorithm>
// #include <unordered_map>
// #include <mutex>
// #include <atomic>
// #include <bits/wordsize.h>
// #include <bits/timesize.h>
using namespace std;

int main()
{
    int a = 0x02;
    int b = 0x03;
    if(a & b == 2)//实际是：if(a & (b == 2))
    {
        printf("1ok!\n");
    }
    else
    {
        printf("1fail!\n");//第一句走这里
    }
    if((a & b) == 2)
    {
        printf("2ok!\n");//第二句走这里。
    }
    else
    {
        printf("2fail!\n");
    }
}